Systems and methods for inserting dialogue into a query response

ABSTRACT

Systems and methods are described herein for inserting dialogue into query responses by generating and using dialogue metadata in conjunction with response templates. Metadata for each portion of dialogue of a plurality of portions of dialogue from a number of content items is stored, including information regarding the source content item, a transcript of the dialogue, and grammatical information. Upon receiving a query related to a content item, a type of response is first determined. Based on the type of response, and using the dialogue metadata, a portion of dialogue is identified for insertion into the response. The identified portion of dialogue is retrieved and inserted at an appropriate position within the response. The response is then generated for output.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No.16/582,106, filed Sep. 25, 2019, the disclosure of which is incorporatedby reference in its entirety.

BACKGROUND

The present disclosure relates to content delivery and consumptionsystems and, more particularly, generating responses to search queriesrelated to content items.

SUMMARY

Many times, in response to a search query and in addition to searchresults, a conversational system replies with text on a display and/or avoice reply to the search query. Such responses are often limited toacknowledgements (e.g., “okay”), simple generic answers, or atext-to-speech conversion of one or more search results. These existingsolutions, however, do not provide engaging responses to the user.

Systems and methods are described herein for inserting dialogue intoquery responses in order to make the response more relevant and engagingto the user by generating and using dialogue metadata in conjunctionwith response templates. Metadata for each portion of dialogue of aplurality of portions of dialogue from a number of content items isstored. The metadata may include information regarding the content itemfrom which the dialogue comes, a transcript of the dialogue, andgrammatical information relevant to insertion of the dialogue into aquery response. Upon receiving a query related to a content item, a typeof response is first determined. Different types of queries may havedifferent types of responses. Based on the type of response, and usingthe dialogue metadata, a portion of dialogue is identified for insertioninto the response. The identified portion of dialogue is retrieved andinserted at an appropriate position within the response, which dependson the type of response. The response is then generated for output.

In some embodiments, a particular portion of dialogue may be identifiedfor insertion into the response based on its part of speech. A part ofspeech that can be inserted into the response is identified. Naturallangue processing is used to determine whether a particular portion ofdialogue is of the identified part of speech. If so, that portion ofdialogue is selected for insertion. If not, and if no other portions ofdialogue are of the identified part of speech, a portion of dialogue canbe modified to become the identified part of speech to enable itsinsertion into the response. Alternatively or additionally, metadata isretrieved for a subset of portions of dialogue that come from thecontent item. The metadata for each portion of dialogue in the subset iscompared with the type of response to identify a portion of dialoguethat can be inserted into the response.

In some embodiments, each portion of dialogue may be categorized as aparticular type of phrase, such as a greeting or exclamation, dialoguerelated to a specific character in the content item, and/or dialoguerelated to the content item itself. For example, the phrase “hakunamatata” may be categorized as a greeting, and as dialogue related to themovie “The Lion King,” and the phrase “I'm the king of the world” may becategorized as related to the character Jack Dawson in the movie“Titanic.” In selecting a portion of dialogue to insert into theresponse, the category of the portion of dialogue may be compared withthe response template.

In some embodiments, if the query is related to a specific entity, suchas a character or actor, the entity is identified from the query, and itis determined whether the identified portion of dialogue can be insertedinto the response template. Natural language processing is used todetermine whether the dialogue makes grammatical sense when insertedinto the response. If not, proper nouns in the portion of dialogue maybe replaced with appropriate pronouns. For example, in response to thequery “Who plays Jack in the movie ‘Titanic’?” the portion of dialogue“I'm the king of the world” may be selected, but not make grammaticalsense within the response. The pronoun part “I'm” of the portion ofdialogue may therefore be replaced by “he's” or “he is.” The response tothe query may then be, for example, “Jack was played by LeonardoDiCaprio, and he is the king of the world.”

In some cases, the portion of dialogue selected for insertion into theresponse contains at least some of the same words in the same ordercompared to the response. In these cases, at least part of the responsemay be replaced by the selected portion of dialogue.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other objects and advantages of the disclosure will beapparent upon consideration of the following detailed description, takenin conjunction with the accompanying drawings, in which like referencecharacters refer to like parts throughout, and in which:

FIG. 1 shows an exemplary query and response, in accordance with someembodiments of the disclosure;

FIG. 2 shows a second exemplary query and response, in accordance withsome embodiments of the disclosure;

FIG. 3 shows a third exemplary query and response, in accordance withsome embodiments of the disclosure;

FIG. 4 is a block diagram showing components and data flow therebetweenof an exemplary system for inserting dialogue into a query response, inaccordance with some embodiments of the disclosure;

FIG. 5 is a flowchart representing a process for inserting dialogue intoa query response, in accordance with some embodiments of the disclosure;

FIG. 6 is a flowchart representing a first process for identifying aportion of dialogue, in accordance with some embodiments of thedisclosure;

FIG. 7 is a flowchart representing a second process for identifying aportion of dialogue, in accordance with some embodiments of thedisclosure;

FIG. 8 is a flowchart representing a first process for selecting aportion of dialogue based on the category of the portion of dialogue, inaccordance with some embodiments of the disclosure;

FIG. 9 is a flowchart representing a second process for selecting aportion of dialogue based on the category of the portion of dialogue, inaccordance with some embodiments of the disclosure;

FIG. 10 is a flowchart representing a process for modifying a portion ofdialogue for insertion into a query response; and

FIG. 11 is a flowchart representing a process for replacing a portion ofa response to a query with a portion of dialogue, in accordance withsome embodiments of the disclosure.

DETAILED DESCRIPTION

FIGS. 1-3 show exemplary search queries and responses, in accordancewith some embodiments of the disclosure. A user may enter or speak aquery 100, 200, or 300 related to a content item or entity within acontent item. The system generates a reply 102, 202, 302 that isappropriate to the type of query and incorporates dialogue from thecontent item to which the query relates, or dialogue referring to orspoken by the entity to which the query relates. The system determineswhere in the response to insert the dialogue using natural languageprocessing. The system also determines whether the dialogue needs to bemodified before being inserted into the response. For example, inresponse to query 200 asking “Who plays Jack in the movie ‘Titanic’?”the system may select the dialogue “I'm the king of the world!” However,that dialogue does not fit grammatically in the response. The systemtherefore modifies the dialogue to “he is the king of the world,” thusdescribing the character Jack in the third person rather thanmaintaining the original wording, which was spoken by the character Jackdescribing himself in the first person. The system may add conjunctionsor other grammatical structures in order to facilitate insertion of thedialogue into the response.

FIG. 4 is a block diagram showing components and data flow therebetweenof an exemplary system for selectively playing back portions of audio ofa content item, in accordance with some embodiments of the disclosure.Media device 400 includes control circuitry 402, which may be based onany suitable processing circuitry and comprises control circuits andmemory circuits, which may be disposed on a single integrated circuit ormay be discrete components. As referred to herein, processing circuitryshould be understood to mean circuitry based on one or moremicroprocessors, microcontrollers, digital signal processors,programmable logic devices, field-programmable gate arrays (FPGAs),application-specific integrated circuits (ASICs), etc., and may includea multi-core processor (e.g., dual-core, quad-core, hexa-core, or anysuitable number of cores). In some embodiments, processing circuitry maybe distributed across multiple separate processors or processing units,for example, multiple of the same type of processing units (e.g., twoIntel Core i7 processors) or multiple different processors (e.g., anIntel Core i5 processor and an Intel Core i7 processor).

Control circuitry 402, using natural language processing circuitry 404,processes portions of dialogue from various content items. Controlcircuitry 402 may access each content item directly or may accesscontent dialogue database 406. Natural language processing circuitry 404receives 408 portions of dialogue from content dialogue database 406 andidentifies words and grammatical structures in each portion of dialogue.Natural language processing circuitry 404 generates metadata describingeach portion of dialogue and transmits 410 the metadata to memory 412for storage.

Media device 400 also includes input circuitry 414, which may include amicrophone and voice processing circuitry for receiving voice commands,infrared receiving circuitry for receiving commands from a remotecontrol device, a touchscreen interface for receiving user interactionswith graphical user interface elements, or any combination thereof orany other suitable input circuitry for receiving any other suitable userinput. Media device 400, using input circuitry 414, receives 416 asearch query from the user. If the search query is entered by the useras a text string, input circuitry 414 transfers 418 the text of thesearch query to natural language processing circuitry 404. If the searchquery is entered vocally (i.e., spoken by the user), input circuitry 414transfers 420 audio data representing the query to transcriptioncircuitry 422, which uses speech recognition to transcribe the searchquery into a corresponding text string. The transcription is thentransferred 424 to natural language processing circuitry 404.

Natural language processing circuitry 404 identifies a content itemrelated to the query. For example, in processing query 100, naturallanguage processing circuitry 404 identifies “Game of Thrones” as thecontent item to which the query relates. When processing query 200,natural language processing circuitry 404 identifies “Titanic” as thecontent item to which the query relates, and further identifies “Jack”as a character in “Titanic” about whom information has been requested.Query 300 contains “Star Wars: The Last Jedi” as the title of a contentitem, which natural language processing circuitry can identify. Naturallanguage processing circuitry 404 may also determine that the presenceof a colon in the title of the content item indicates a subtitle andseparately identify “Star Wars” as a group of content items of which“The Last Jedi” is a member. When retrieving portions of dialogue forinsertion, control circuitry 402 may retrieve portions of dialoguerelated to “Star Wars” generally or to “The Last Jedi” specifically.

Natural language processing circuitry 404 also processes the query todetermine what information is being requested. Natural languageprocessing circuitry 404 selects a response template based on the typeof information being requested. For example, in response to query 100,which asks for information regarding broadcast time of an episode of aparticular series, natural language processing circuitry 404 may selecta response template having the format “The next episode of {X} is {DATE}on {SOURCE}” where {X} represents the name of the series, {DATE}represents the date and time at which the requested episode will bebroadcast, and {SOURCE} represents the channel or content source onwhich the requested episode will be broadcast.

Natural language processing circuitry 404 transmits 426 a query to, forexample, memory 412 for the requested information. The requestedinformation may alternatively be requested from a remote server ordatabase stored outside media device 400. Natural language processingcircuitry 404 receives 428 the requested information and incorporates itinto the response according to the selected response template. Naturallanguage processing circuitry 404 also transmits 430 a second query tocontent dialogue database 406 for portions of content associated withthe content item to which the query relates. In response to the secondquery, natural language processing circuitry 404 receives 432 aplurality of portions of content associated with the content item.Natural language processing circuitry 404 may analyze each portion ofdialogue to determine which portion to insert into the response.Alternatively, natural language processing circuitry 404 may usemetadata previously generated by natural language processing circuitry404 to determine which portion to insert into the response.

After selecting a portion of dialogue to insert into the response,natural language processing circuitry 404 determines, based ongrammatical structures of the response and the dialogue, where in theresponse to insert a portion of dialogue. Natural language processingcircuitry 404 then constructs the response according to the responsetemplate, incorporating both the requested information received frommemory 412 and the selected portion of dialogue. Natural languageprocessing circuitry 404 may transmit 434 text of the response, atext-to-speech audio conversion of the text of the response, or both tooutput circuitry 436. Output circuitry 436 may include video and audioprocessing circuitry enabling media device 400 to output text of theresponse on a display and audio of the response through an audio outputdevice such as a speaker or headphones.

FIG. 5 is a flowchart representing an illustrative process 500 forinserting dialogue into a query response, in accordance with someembodiments of the disclosure. Process 500 may be implemented on controlcircuitry 402. In addition, one or more actions of process 500 may beincorporated into or combined with one or more actions of any otherprocess or embodiment described herein.

At 502, control circuitry 402 initializes a counter variable N, settingits value to one, a variable T_(c) representing the number of contentitems for which dialogue is available to process, a counter variable D,setting its value to one, and a variable T_(D) representing the numberof portions of dialogue available to process from a particular contentitem.

At 504, control circuitry 402 stores metadata corresponding to theD^(th) portion of dialogue on the N^(th) content item. The metadata maybe generated by natural language processing circuitry 402 throughprocessing of the D^(th) portion of dialogue. The metadata may describegrammatical structures or parts of speech and may include atranscription of the dialogue and an identifier of the content item fromwhich the dialogue comes. At 506, control circuitry 402 determineswhether D is equal to T_(D), meaning that all portions of dialogue fromthe N^(th) content item have been processed. If D is not equal to T_(D),then, at 508, control circuitry 402 increments the value of D by one andprocessing returns to step 504. If D is equal to T_(D), then, at 510,control circuitry 402 determines whether N is equal to T_(C), meaningthat all content items have been processed. If N is not equal to T_(C),then, at 512, control circuitry 402 increments the value of N by one andresets the value of D to one. Processing then returns to step 504.

Steps 502 through 512 generate and store metadata corresponding to wordsand grammatical structure contained in each portion of dialogue fromeach available content item. These steps may alternatively be performedby a remote device, such as a computer or other processing device onwhich content dialogue database 406 may be hosted.

At 514, control circuitry 402 receives a query (e.g., query 100, 200,300) related to a content item. The query may be received as a textinput or as a voice input. If the query is received as a voice input,the voice input is transcribed to text for further processing.

At 516, control circuitry 402 determines, based on the query, a type ofresponse. For example, for a query requesting information aboutbroadcast times for a particular content item, control circuitry 402 mayselect an appropriate response template such as described above inconnection with FIG. 4 .

At 518, control circuitry 402 identifies, based on the metadata and thetype of response, a portion of dialogue. The selected response templatemay grammatically accept a greeting or exclamation prepended or appendedto it. Using metadata of the portions of dialogue related to the contentitem to which the query relates, control circuitry 402 identifies anappropriate greeting or exclamation to prepend or append to theresponse. Control circuitry 402 may decide, based on usage of thegreeting or exclamation within the content item, whether to prepend orappend the dialogue to the response. For example, if the query relatesto “Star Wars: The Last Jedi,” control circuitry 402 may select theportion of dialogue “May the Force be with you!” to be inserted into theresponse. Since that phrase is most often used in “Star Wars” at the endof a sentence or conversation, control circuitry 402 determines that itshould be appended to the end of the response.

At 520, control circuitry 402 retrieves the portion of dialogue. Controlcircuitry 402 may retrieve the audio of the portion of dialogue forplayback as part of an audio response or may retrieve transcribed textof the portion of dialogue from, for example, the metadata. At 522,control circuitry 402 inserts the portion of dialogue at a positionwithin the response based on the type of response as described aboveand, at 524, generates the response for output. Control circuitry 402may generate text for output on a display or audio for output by anaudio output device.

The actions or descriptions of FIG. 5 may be used with any otherembodiment of this disclosure. In addition, the actions and descriptionsdescribed in relation to FIG. 5 may be done in suitable alternativeorders or in parallel to further the purposes of this disclosure.

FIG. 6 is a flowchart representing a first illustrative process 600 foridentifying a portion of dialogue, in accordance with some embodimentsof the disclosure. Process 600 may be implemented on control circuitry402. In addition, one or more actions of process 600 may be incorporatedinto or combined with one or more actions of any other process orembodiment described herein.

At 602, control circuitry 402, using natural language processingcircuitry 404, identifies a part of speech to be inserted into theresponse. For example, natural language processing circuitry 404 mayanalyze the wording and grammar of the response template to identifypositions at which dialogue can be inserted and, grammatically, whatkinds of words or phrases can be inserted at that position.

At 604, control circuitry 402 initializes a counter variable N, settingits value to one, and a variable T representing the total number ofportions of dialogue being considered for insertion into the response.At 606, control circuitry 402, using natural language processingcircuitry 404, determines whether the N^(th) portion of dialogue is ofthe identified part of speech. For example, natural language processingcircuitry 404 may access a dictionary stored locally in memory 412 or ona remote server. Alternatively, natural language processing 404 maydetermine the part of speech of the dialogue from grammatical context,capitalizations or other indications within the dialogue. If the N^(th)portion of dialogue is of the identified part of speech, then, at 608,control circuitry 402 selects the N^(th) portion of dialogue to beinserted into the response. If the N^(th) portion of dialogue is not ofthe identified part of speech, then at 610, control circuitry 402determines whether N is equal to T. If N is not equal to T, meaning thatthere are additional portions of dialogue to consider, then, at 612,control circuitry 402 increments the value of N by one, and processingreturns to step 606. If N is equal to T, meaning that all portions ofdialogue have been considered, then, at 614, control circuitry 402selects a portion of dialogue and, at 616, modifies the selected portionof dialogue to become the identified part of speech, thereby enablingits insertion into the response.

The actions or descriptions of FIG. 6 may be used with any otherembodiment of this disclosure. In addition, the actions and descriptionsdescribed in relation to FIG. 6 may be done in suitable alternativeorders or in parallel to further the purposes of this disclosure.

FIG. 7 is a flowchart representing a second illustrative process 700 foridentifying a portion of dialogue, in accordance with some embodimentsof the disclosure. Process 700 may be implemented on control circuitry402. In addition, one or more actions of process 700 may be incorporatedinto or combined with one or more actions of any other process orembodiment described herein.

At 702, control circuitry 402 retrieves metadata of a subset of portionsof dialogue that come from the content item to which the query relates.For example, the metadata may be stored in memory 412 or in contentdialogue database 406. Control circuitry 402 may retrieve the metadataby transmitting an SQL SELECT command to the database or by searchingthe metadata for an identifier of the content item.

At 704, control circuitry 402 initializes a counter variable N, settingits value to one, and a variable T representing the total number ofportions of dialogue in the subset. At 706, control circuitry 402determines whether metadata of the N^(th) portion of dialogue indicatescompatibility with the type of response. For example, metadata of eachcontent item may include information describing grammatical features ofthe dialogue which can be used by natural language processing circuitry404 to determine whether the dialogue can be inserted into a particularresponse. If the metadata does indicate compatibility with the type ofresponse, then, at 708, control circuitry 402 selects the N^(th) portionof dialogue. If the metadata does not indicate compatibility, then, at710, control circuitry 402 determines whether N is equal to T, meaningthat all portions of dialogue in the subset have been considered. If Nis not equal to T, then, at 712, control circuitry 402 increments thatvalue of N by one, and processing returns to step 706. If N is equal toT, then the process is complete, and no further steps are taken in theprocess. It may thus be the case that no portion of dialogue is suitablefor insertion into the response, or that no portion of dialogue can beinserted into the response without modification.

The actions or descriptions of FIG. 7 may be used with any otherembodiment of this disclosure. In addition, the actions and descriptionsdescribed in relation to FIG. 7 may be done in any suitable alternativeorders or in parallel to further the purposes of this disclosure.

FIGS. 8 and 9 are flowcharts representing illustrative processes 800 and900 for selecting a portion of dialogue based on the category of theportion of dialogue, in accordance with some embodiments of thedisclosure. Processes 800 and 900 may be implemented on controlcircuitry 402. In addition, one or more actions of either process 800 orprocess 900 may be incorporated into or combined with one or moreactions of any other process or embodiment described herein.

Referring now to FIG. 8 , a first process for selecting a portion ofdialogue based on the category of the portion of dialogue will now bedescribed. At 802, control circuitry 402, using natural languageprocessing circuitry 404, categorizes a portion of dialogue as at leastone of a greeting, dialogue related to a specific character, or dialoguerelated to the specific content item. Natural language processingcircuitry 404 may analyze any or all of the words, punctuation, andusage of the dialogue within the content item to determine whether thedialogue is a greeting. Natural language processing circuitry 404 mayanalyze nouns and pronouns in conjunction with the identity of thespeaker of the dialogue to determine if the dialogue relates to aspecific character. Natural language processing circuitry 404 mayanalyze usage and frequency of usage of the dialogue within the contentitem or frequency of usage in other content items to determine whetherthe dialogue relates specifically to the content item. For example, “Maythe Force be with you” is used almost exclusively in movies andtelevision shows belonging to the “Star Wars” franchise, and most usesof the phrase outside of the “Star Wars” franchise are used in referenceto or in parody of the “Star Wars” franchise. Thus, natural languageprocessing circuitry 404 may determine that “May the Force be with you”is dialogue that is related specifically to “Star Wars.” As anotherexample, “I'm the king of the world!” is used only once in the movie“Titanic” and is spoken by the character Jack Dawson. Use of thefirst-person pronoun “I” indicates that the dialogue relatesspecifically to Jack Dawson.

At 804, control circuitry 402 retrieves a response templatecorresponding to the type of response. For example, in response to aquery requesting information on where to watch a particular contentitem, control circuitry 402 may retrieve a response template similar to“{X} is available on {SOURCE}” where {X} represents the requestedcontent item and {SOURCE} represents the channel or service on which therequested content item is available. At 806, control circuitry 402determines whether the category of the portion of dialogue can beinserted into the response template. Natural language processingcircuitry 404 compares the identified category of the portions ofdialogue with the grammatical structure of the response template as wellas the type of information requested. For example, in response to arequest for information regarding broadcast times for a particularcontent item, a portion of dialogue categorized as relating to aspecific character may not be an appropriate selection for insertioninto the response template. However, a portion of dialogue categorizedas relating to the specific content item about which information hasbeen requested may be inserted into the response. Greetings andvaledictions may also be inserted at the start or end of the responsetemplate, respectively. If the category of the portion of dialogue canbe inserted into the response template, then, at 808, control circuitry402 selects the portion of dialogue for insertion.

Referring now to FIG. 9 , an alternative process for selecting a portionof dialogue based on the category of the portion of dialogue will now bedescribed. At 902, control circuitry 402 first retrieves a responsetemplate corresponding to the type of response. At 904, controlcircuitry 402 initializes counter variable N, setting its value to one,and variable T representing the number of portions of dialogue. At 906,control circuitry 402, using natural language processing circuitry 404,categorizes the N^(th) portion of dialogue using methods described abovein connection with FIG. 8 . At 908, control circuitry 402 determineswhether the category of the N^(th) portion of dialogue can be insertedinto the response template using methods described above in connectionwith FIG. 8 . If so, then, at 910, control circuitry 402 selects theN^(th) portion of dialogue for insertion into the response. If not,then, at 912, control circuitry 402 determines whether N is equal to T,meaning that all portions of dialogue have been processed. If N is notequal to T, then, at 914, control circuitry 402 increments the value ofN by one, and processing returns to step 906.

The actions or descriptions of FIGS. 8 and 9 may be used with any otherembodiment of this disclosure. In addition, the actions and descriptionsdescribed in relation to FIGS. 8 and 9 may be done in any suitablealternative orders or in parallel to further the purposes of thisdisclosure.

If no portion of dialogue is selected, control circuitry 402 may modifya portion of dialogue to be suitable for insertion into the responsetemplate. For example, control circuitry 402, using natural languageprocessing circuitry 404, may analyze words and grammatical structuresof both the response template and a portion of dialogue to determine howbest to modify the portion of dialogue to be compatible with theresponse template. For example, in response to a query for informationregarding the actor who played a particular character in a particularcontent item, the selected response template may be “{ACTOR} played{CHARACTER} in {CONTENT_ITEM}.” Control circuitry 402 may determine thata portion of dialogue related to the character may be inserted at theend of the template. As an example, the query may ask what actor playedJack in the movie “Titanic.” In response, control circuitry 402 may notidentify any grammatically compatible portions of dialogue about thecharacter Jack. However, the dialogue “I'm the king of the world!”spoken by Jack in describing himself, may be suitable if modified, andcontrol circuitry 402, using natural language processing circuitry 404,determines that the descriptive first-person pronoun “I'm” can bemodified to the third-person equivalent “he is,” thus making thedialogue grammatically compatible with the response template. As anotherexample, the query may be for information regarding the movie “SoylentGreen.” The dialogue “Soylent Green is people!” may be madegrammatically compatible by replacing the proper noun “Soylent Green”with the third-person pronoun “it.”

FIG. 10 is a flowchart representing an illustrative process 1000 formodifying a portion of dialogue for insertion into a query response.Process 1000 may be implemented on control circuitry 402. In addition,one or more actions of process 1000 may be incorporated into or combinedwith one or more action of any other process or embodiment describedherein.

At 1002, control circuitry 402, using natural language processingcircuitry 404, identifies the entity to which the query is related. Forexample, natural language processing circuitry 404 may identify propernouns in the dialogue based on capitalization. Alternatively, metadataassociated with the dialogue may include an identifier of the entitythat spoke the dialogue or about whom the dialogue was spoken. At 1004,control circuitry 402 retrieves a response template corresponding to thetype of response. This may be accomplished using methods described abovein connection with FIG. 8 . At 1006, control circuitry 402, usingnatural language processing circuitry 404, processes the identifiedportion of dialogue and the response template to identify various wordsand grammatical features of both the dialogue and the response template.At 1008, control circuitry 402 determines, using the identified wordsand grammatical features, whether the identified portion of dialogue canbe inserted into the response template. This may be accomplished usingmethods described above in connection with FIG. 8 . If the identifiedportion of dialogue cannot be inserted into the response template, then,at 1010, control circuitry 402, using natural language processingcircuitry 404, replaces proper nouns and pronouns within the identifiedportion of dialogue with appropriate pronouns allowing the portion ofdialogue to be inserted into the response template.

The actions or descriptions of FIG. 10 may be used with any otherembodiment of this disclosure. In addition, the actions and descriptionsdescribed in relation to FIG. 10 may be done in any suitable alternativeorders or in parallel to further the purposes of this disclosure.

FIG. 11 is a flowchart representing an illustrative process 1100 forreplacing a portion of a response to a query with a portion of dialogue,in accordance with some embodiments of the disclosure. Process 1100 maybe implemented on control circuitry 402. In addition, one or moreactions of process 1100 may be incorporated into or combined with one ormore actions of any other process or embodiment described herein.

At 1102, control circuitry 402, using natural language processingcircuitry 404, compares words of the identified portion of dialogue withwords of a response template. This may be a simple binary comparisonoperation, a regular expression comparison operation, or any othersuitable text comparison. At 1104, control circuitry 402 determinewhether the identified portion of dialogue contains a contiguous set ofwords that is also contained in the response template. For example, theresponse template for a query asking for information on where to watchthe movie “The Godfather” may include the words “an offer” if controlcircuitry 402 identifies a limited time offer or sale for purchasing orrenting “The Godfather.” The identified portion of dialogue may be “I'mgonna make him an offer he can't refuse.” Natural language processingcircuitry 404 determines that the words “an offer” appear together inthe same order in both the response template and the portion ofdialogue. In that case, at 1106, natural language processing circuitry404 replaces a portion of the response template with the identifiedportion of dialogue, or a portion thereof. For example, the responsetemplate reads “There is an offer to purchase {X} for only {PRICE} on{SOURCE},” where {X} represents the content item, {PRICE} represents thepurchase price, and {SOURCE} represents the content provider or servicefrom which the content item can be purchased. The response may bemodified by natural language processing circuitry 404 to substitute someof the identified portion of dialogue into the response template so thatit reads “There is an offer you can't refuse to purchase ‘The Godfather’for only $2.99 on Amazon.”

The actions or descriptions of FIG. 11 may be used with any otherembodiment of this disclosure. In addition, the actions and descriptionsdescribed in relation to FIG. 11 may be done in any suitable alternativeorders or in parallel to further the purposes of this disclosure.

The processes described above are intended to be illustrative and notlimiting. One skilled in the art would appreciate that the steps of theprocesses discussed herein may be omitted, modified, combined, and/orrearranged, and any additional steps may be performed without departingfrom the scope of the invention. More generally, the above disclosure ismeant to be exemplary and not limiting. Only the claims that follow aremeant to set bounds as to what the present invention includes.Furthermore, it should be noted that the features and limitationsdescribed in any one embodiment may be applied to any other embodimentherein, and flowcharts or examples relating to one embodiment may becombined with any other embodiment in a suitable manner, done indifferent orders, or done in parallel. In addition, the systems andmethods described herein may be performed in real time. It should alsobe noted that the systems and/or methods described above may be appliedto, or used in accordance with, other systems and/or methods.

What is claimed is:
 1. A method comprising: receiving a query; determining a response to the query; determining whether the query is related to a media content item; in response to determining that the query is related to the media content item, identifying a portion of the media content item; and inserting the identified portion of the media content item into the response, wherein the identified portion includes at least one of an exclamation based on the media content item, dialogue related to a specific character based on the media content item, or dialogue related to and based on the specific media content item.
 2. The method of claim 1, wherein the identifying the portion of the media content item comprises: identifying a part of speech to be inserted into the response; determining, using natural language processing, whether the portion of the content item includes the identified part of speech; in response to determining that the portion of the media content item includes the identified part of speech, selecting the portion of the media content item; and in response to determining that no portion of the media content item includes the identified part of speech: selecting the portion of the media content item; and modifying the selected portion of the media content item to include the identified part of speech.
 3. The method of claim 1, wherein the identifying the portion of the media content item comprises: retrieving metadata of the portion of the media content item; comparing the metadata of the portion of the media content item with a type of response to the query; and selecting, based on the comparing, the portion of the media content item.
 4. The method of claim 1, further comprising: retrieving a response template corresponding to a type of response to the query; determining, using natural language processing, whether the category of the portion of the media content item can be inserted into the response template; and in response to determining that the category of the portion of the media content item can be inserted into the response template, selecting the portion of the media content item.
 5. The method of claim 1, wherein the query is related to an entity within the media content item, the method further comprising: identifying the entity, wherein an identified portion of the media content item corresponds to the entity; retrieving a response template corresponding to a type of response to the query; determining, using natural language processing, whether the identified portion of the media content item can be grammatically inserted into the response template; and in response to determining that the identified portion of the media content item cannot be grammatically inserted into the response template, replacing proper nouns and pronouns within the identified portion of the media item with appropriate pronouns.
 6. The method of claim 1, further comprising: comparing words of the identified portion of the media content item with words of a response template corresponding to a type of response to the query; determining, based on the comparing, whether the identified portion of the media content item contains a contiguous set of words that is also contained in the response template; and in response to determining that the identified portion of the media content item contains the contiguous set of words that is also contained in the response template, replacing a portion of the response template with the identified portion of the media content item.
 7. The method of claim 1, further comprising: determining, based on the query, a type of response to the query, wherein the inserting the identified portion of the media content item into the response is based on the type of response to the query.
 8. The method of claim 1, further comprising: generating the response for output, wherein the response includes at least one of an acknowledgment, a generic answer, or one or more search results.
 9. The method of claim 1, wherein the response further includes the inserted identified portion, and wherein the response including the inserted identified portion is more engaging than the response including the response prior to including the inserted identified portion.
 10. The method of claim 1, wherein each portion of the media content item comprises at least one of a portion of a book, a play, a show, or a movie; or a famous line of a famous creative work.
 11. A system comprising: memory; and control circuitry configured to: receive a query; determine a response to the query; determine whether the query is related to a media content item; in response to determining that the query is related to the media content item, identify a portion of the media content item; and insert the identified portion of the media content item into the response, wherein the identified portion includes at least one of an exclamation based on the media content item, dialogue related to a specific character based on the media content item, or dialogue related to and based on the specific media content item.
 12. The system of claim 11, wherein the control circuitry configured to identify the portion of the media content item is further configured to: identify a part of speech to be inserted into the response; determine, using natural language processing, whether the portion of the media content item includes the identified part of speech; in response to determining that the portion of the media content item includes the identified part of speech, select the portion of the media content item; and in response to determining that no portion of the media content item includes the identified part of speech: select the portion of the media content item; and modify the selected portion of the media content item to include the identified part of speech.
 13. The system of claim 11, wherein the control circuitry configured to identify the portion of the media content item is further configured to: retrieve metadata of the portion of the media content item; compare the metadata of the portion of the media content item with a type of response to the query; and select, based on the comparing, the portion of the media content item.
 14. The system of claim 11, wherein the control circuitry is further configured to: retrieve a response template corresponding to a type of response to the query; determine, using natural language processing, whether the category of the portion of the media content item can be inserted into the response template; and in response to determining that the category of the portion of the media content item can be inserted into the response template, select the portion of the media content item.
 15. The system of claim 11, wherein the query is related to an entity within the media content item, and wherein the control circuitry is further configured to: identify the entity, wherein an identified portion of the media content item corresponds to the entity; retrieve a response template corresponding to a type of response to the query; determine, using natural language processing, whether the identified portion of the media content item can be grammatically inserted into the response template; and in response to determining that the identified portion of the media content item cannot be grammatically inserted into the response template, replace proper nouns within the identified portion of the media content item with appropriate pronouns.
 16. The system of claim 11, wherein the control circuitry is further configured to: compare words of the identified portion of the media content item with words of a response template corresponding to a type of response to the query; determine, based on the comparing, whether the identified portion of the media content item contains a contiguous set of words that is also contained in the response template; and in response to determining that the identified portion of the media content item contains the contiguous set of words that is also contained in the response template, replace a portion of the response template with the identified portion of the media content item.
 17. The system of claim 11, wherein the control circuitry is further configured to: determine, based on the query, a type of response to the query, wherein the inserting the identified portion of the media content item into the response is based on the type of response to the query.
 18. The system of claim 11, wherein the control circuitry is further configured to: generate the response for output, wherein the response includes at least one of an acknowledgment, a generic answer, or one or more search results.
 19. The system of claim 11, wherein the response further includes the inserted identified portion, and wherein the response including the inserted identified portion is more engaging than the response including the response prior to including the inserted identified portion.
 20. The system of claim 11, wherein each portion of the media content item comprises at least one of a portion of a book, a play, a show, or a movie; or a famous line of a famous creative work. 